Computer Programming -
অ্যাসেম্বলি প্রোগ্রামিং (Assembly Programming)
Assembly Language এর ভূমিকা (Introduction to Assembly Language) |
272
272
বিভিন্ন ধরনের Assembly Language: x86, ARM, MIPS
Assembly Language বিভিন্ন প্রসেসর আর্কিটেকচারের জন্য ভিন্ন হতে পারে, কারণ প্রতিটি আর্কিটেকচারের নিজস্ব ইনস্ট্রাকশন সেট থাকে। নিচে x86, ARM এবং MIPS Assembly Language সম্পর্কে বিস্তারিত আলোচনা করা হলো:
১. x86 Assembly Language:
সংজ্ঞা: x86 আর্কিটেকচারটি Intel দ্বারা তৈরি করা হয়েছিল এবং এটি বর্তমানে ডেস্কটপ, ল্যাপটপ, এবং সার্ভারে ব্যাপকভাবে ব্যবহৃত হয়। x86 Assembly Language হল এই আর্কিটেকচারের জন্য বিশেষভাবে ডিজাইন করা ভাষা।
বৈশিষ্ট্য:
কমপ্লেক্স ইনস্ট্রাকশন সেট (CISC): x86 আর্কিটেকচারে বিভিন্ন জটিল নির্দেশনা থাকে, যা একটি ইনস্ট্রাকশনের মাধ্যমে একাধিক কাজ সম্পন্ন করতে পারে।
রেজিস্টার সংখ্যা: x86 আর্কিটেকচারে সাধারণত ৮টি জেনারেল-পারপাস রেজিস্টার থাকে (যেমন EAX, EBX, ECX, EDX)।
ব্যবহার: ডেস্কটপ এবং ল্যাপটপের অপারেটিং সিস্টেম এবং অ্যাপ্লিকেশন ডেভেলপমেন্টে ব্যবহৃত হয়।
উদাহরণ:
MOV EAX, 5 ; EAX রেজিস্টারে ৫ স্টোর করা
ADD EAX, 10 ; EAX রেজিস্টারে ১০ যোগ করা
INT 0x80 ; সিস্টেম কল করা
২. ARM Assembly Language:
সংজ্ঞা: ARM (Advanced RISC Machine) আর্কিটেকচারটি সাধারণত মোবাইল ডিভাইস এবং এম্বেডেড সিস্টেমে ব্যবহৃত হয়। এটি একটি RISC (Reduced Instruction Set Computing) আর্কিটেকচার।
বৈশিষ্ট্য:
RISC ডিজাইন: কম এবং সহজ নির্দেশনা ব্যবহার করে, যা দ্রুত প্রক্রিয়াকরণ সক্ষম করে।
পাওয়ার ইফিসিয়েন্সি: ARM আর্কিটেকচার কম শক্তি ব্যবহার করে, যা মোবাইল ডিভাইসের ব্যাটারি লাইফ বাড়াতে সাহায্য করে।
রেজিস্টার সংখ্যা: সাধারণত ১৬টি জেনারেল-পারপাস রেজিস্টার থাকে (যেমন R0 থেকে R15)।
ব্যবহার: মোবাইল ফোন, ট্যাবলেট, এবং এম্বেডেড সিস্টেমে ব্যবহৃত হয়।
উদাহরণ:
MOV R0, #5 ; R0 রেজিস্টারে ৫ স্টোর করা
ADD R0, R0, #10 ; R0 রেজিস্টারে ১০ যোগ করা
SWI 0x11 ; সিস্টেম কল করা
৩. MIPS Assembly Language:
সংজ্ঞা: MIPS (Microprocessor without Interlocked Pipeline Stages) আর্কিটেকচারটি RISC ভিত্তিক একটি সাধারণ আর্কিটেকচার। এটি বিশ্ববিদ্যালয় ও শিক্ষামূলক উদ্দেশ্যে বেশ জনপ্রিয়, পাশাপাশি এম্বেডেড সিস্টেমে ব্যবহৃত হয়।
বৈশিষ্ট্য:
RISC আর্কিটেকচার: সহজ এবং দ্রুত নির্দেশনা সেট ব্যবহার করে, যা ইনস্ট্রাকশন পাইপলাইনকে সহজ করে।
রেজিস্টার সংখ্যা: সাধারণত ৩২টি জেনারেল-পারপাস রেজিস্টার থাকে (যেমন $t0 থেকে $t9, $s0 থেকে $s7)।
ব্যবহার: এম্বেডেড সিস্টেম, প্রিন্টার, রাউটার এবং শিক্ষামূলক উদ্দেশ্যে ব্যবহৃত হয়।
উদাহরণ:
li $t0, 5 ; $t0 রেজিস্টারে ৫ স্টোর করা
addi $t0, $t0, 10 ; $t0 রেজিস্টারে ১০ যোগ করা
syscall ; সিস্টেম কল করা
তুলনামূলক পার্থক্য:
Assembly Language
আর্কিটেকচারের ধরন
রেজিস্টার সংখ্যা
বৈশিষ্ট্য
ব্যবহার ক্ষেত্র
x86
CISC
৮টি
জটিল ইনস্ট্রাকশন সেট, ডেস্কটপ এবং ল্যাপটপে ব্যবহৃত
ডেস্কটপ, ল্যাপটপ, সার্ভার
ARM
RISC
১৬টি
পাওয়ার ইফিসিয়েন্সি, মোবাইল এবং এম্বেডেড সিস্টেমে ব্যবহৃত
মোবাইল, ট্যাবলেট, এম্বেডেড সিস্টেম
MIPS
RISC
৩২টি
সহজ নির্দেশনা, শিক্ষামূলক এবং এম্বেডেড কাজে ব্যবহৃত
এম্বেডেড সিস্টেম, শিক্ষামূলক উদ্দেশ্যে
উপসংহার:
x86, ARM, এবং MIPS Assembly Language এর প্রত্যেকটি নির্দিষ্ট আর্কিটেকচারের জন্য উপযোগী। x86 জটিলতা এবং বৈচিত্র্যে সমৃদ্ধ হলেও, ARM কম শক্তি ব্যবহার এবং মোবাইল ডিভাইসের জন্য দক্ষ। MIPS সহজ এবং শিক্ষামূলক ব্যবহারের জন্য উপযুক্ত।